b6027cd01c775e06806d6e8309dd53fc62a93038,tests/src/android/support/design/widget/TabLayoutTest.java,TabLayoutTest,testMultipleTabsWithCustomLayoutSelection1,#,114
Before Change
final TabLayout tabs = (TabLayout) inflater.inflate(R.layout.design_tabs, null);
tabs.addTab(tabs.newTab().setCustomView(R.layout.design_tab_item_custom));
tabs.addTab(tabs.newTab().setCustomView(R.layout.design_tab_item_custom), true);
tabs.addTab(tabs.newTab().setCustomView(R.layout.design_tab_item_custom));
assertEquals("Second tab is selected", 1, tabs.getSelectedTabPosition());
After Change
final TabLayout.OnTabSelectedListener mockListener =
mock(TabLayout.OnTabSelectedListener.class);
final LayoutInflater inflater = LayoutInflater.from(mActivityTestRule.getActivity());
final TabLayout tabs = (TabLayout) inflater.inflate(R.layout.design_tabs, null);
tabs.addOnTabSelectedListener(mockListener);
final TabLayout.Tab tab1 = tabs.newTab().setCustomView(R.layout.design_tab_item_custom);
tabs.addTab(tab1);
verify(mockListener, times(1)).onTabSelected(eq(tab1));
verify(mockListener, times(0)).onTabUnselected(any(TabLayout.Tab.class));
final TabLayout.Tab tab2 = tabs.newTab().setCustomView(R.layout.design_tab_item_custom);
tabs.addTab(tab2, true);
verify(mockListener, times(1)).onTabSelected(eq(tab2));
verify(mockListener, times(1)).onTabUnselected(eq(tab1));
final TabLayout.Tab tab3 = tabs.newTab().setCustomView(R.layout.design_tab_item_custom);